| Установка на Linux | ||
|---|---|---|
| Установка на Linux |
Установка Docker1 вариант (Edge):curl -sSL https://get.docker.com/ | sh2 вариант:Скрипт для установки на Linux: http://get.docker.com Копируем sh get-docker.shДобавить Docker в группуsudo usermod -aG docker effectiveuser whoami Проверка установки:docker version || sudo docker version Нужно залогиниться:docker login
Ввести логин и пароль от Docker Hub |
Docker-Docs Docker контейнер - это не ВМ, это процесс который запускается в фоне |
| 3 вариант (c docker-compose) | sh install.sh |
install.sh |
| Docker-machine |
Установка docker-machinehttps://github.com/docker/machine/releases ... выбрать последний релиз ... ... скопировать скрипт ... ... sudo -i и установить скрипт... docker-machine -v
|
Docs: https://docs.docker.com/machine/install-machine/ |
| Docker-compose |
Установка docker-composehttps://github.com/docker/compose/releases ... выбрать последний релиз ... ... скопировать скрипт ... ... sudo -i и установить скрипт... docker-compose -v
|
Docs: https://docs.docker.com/compose/install/ |
| Установка на Windows | ||
| Установка на Windows | Устанавливаем Docker-Desktop CE для Windows Docker-desktop.
Параметры виртуализации настраиваются в программе Hyper-V Manager Устанавливаем Docker-toolbox doc ker-machine startdocker-machine env defaultdocker-machine env default |
Для работы в Windows Docker требует поддержку виртуализации. Включается в настройках BIOS |
| Установка на Mac OS | ||
| Установка на Mac OS | Download desktop app bash-completionbrew install bash-completion sudo curl -L https://raw.githubusercontent.com/docker/machine/v0.16.0/contrib/completion/bash/docker-machine.bash -o `brew --prefix`/etc/bash_completion.d/docker-machine docker Tab x2
|
|
| Запуск контейнеров | ||
Контейнер-сервер |
sudo docker run --name docker-nginx -p 80:80 nginx docker run nginx - какой контейнер создаем и запускаем (будет скачан с DockerHub) Будет присвоен uniq id --name docker-nginx - кастомное имя, которое мы присваиваем контейнеру-p 80:80 - порт (localhost или 0.0.0.0:80) Запуск в фоне (флаг -d)sudo docker run --name docker-nginx -p 80:80 --detach (-d) nginxСписок запущенных контейнеров (всех):docker container ls (-a)docker ps (-a)Запуск\остановка контейнера:docker container run\stop CONTAINER_IDУдаление контейнера:Запущенный контейнер можно удалить только с docker container rm CONTAINER_ID docker container rm -f CONTAINER_IDЛоги:docker container logs cont_name
Набор контейнеров для веб-сервера
Как зайти в запущенный контейнер через терминалdocker container exec -it cont_name bash
|
Когда запускаем команду run container
ps aux - список запущенных процессов
|
Образ(image) |
Много контейнеров может лежать в образе | http://hub.docker.com/ - репозитории для docker-образов |
| Docker-команды | ||
| Список комманд | docker |
|
| Шаблон | docker <command> <sub-command> (options) |
|
| Информация | docker info |
|
| Добавить группу и пользователя |
// добавить группу
sudo groupadd docker
// добавить пользователя в группу
sudo usermod -aG docker username
// узнать username
sudo whoami
|
|
| Посмотреть образы и/или контейнеры |
// запущенные
docker ps
// установленные
docker ps -a
// посмотреть только образы
docker image ls (--all)
// посмотреть только контейнеры
docker container ls (--all)
|
NAMES - имена контейнеров |
| Запустить указанные контейнеры |
docker start cont_name1 cont_name2
|
|
| Остановить контейнеры |
docker stop cont_name1 cont_name2
// остановить все
docker stop $(docker ps -q)
|
|
| Перезапуск docker | docker service docker restart |
|
Real use on projects |
docker stop $(docker ps -q -a)docker rm -fdocker-compose pulldocker-compose up -d |
|